1. Technical Field
The present invention relates to journaling in a file system in a computing system. More particularly, the invention concerns a method for data journaling with improved write performance.
2. Description of Related Art
Important data is often stored in computer systems. Data can be lost due to problems such as system crashes, hardware failures, and abnormal computing system halts. Journaled file systems can be used to maintain data integrity when these types of problems occur. Journaled file systems maintain file system integrity by recording information regarding updates to directories, bitmaps, and/or data, in a log, also called a journal, before the updates are written to a storage device such as a hard disk. In event of a system crash or other problem, the information in the journal can be used to restore the file system to a consistent state. Full-journaling filesystems additionally perform data journaling, in which data updates are also stored in the journal, to ensure that no committed data is lost.
In most filesystems that implement data journaling, for example ext3, write performance is degraded by a factor of two. The write performance is degraded because every write is first written to the log, and is subsequently written to the original target storage location. Consequently, the performance of existing data journaling filesystems is not adequate for many applications.